<!DOCTYPE html>
<html lang="zh-CN">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link type="text/css" rel="stylesheet" href="styles.css">
  <script type="text/javascript" src="config.js"></script>
</head>

<body>
  <h1 class="h">6. 与Pandas的集成</h1>
  <p>Matplotlib 可以和 Pandas 无缝集成。</p>
  <strong>假设我们有一个 DataFrame：</strong>
  <pre><code>df = pd.DataFrame({
    'year': [2015, 2016, 2017, 2018, 2019, 2020],
    'sales': [100, 120, 140, 180, 200, 210],
    'profit': [20, 25, 30, 40, 50, 55]
})
df.set_index('year', inplace=True)
print(df)</code></pre>
  <strong>直接用 Pandas 的 .plot() 方法。</strong>
  <p>Pandas 的 Series 和 DataFrame 对象都自带了一个 .plot() 方法，它底层调用的就是 Matplotlib。</p>
  <pre><code># 折线图：直接画DataFrame的所有列
df.plot(figsize=(8, 5))
plt.title('Sales and Profit Over Years')
plt.ylabel('Amount')
plt.show()

# 柱状图
df.plot(kind='bar', figsize=(8, 5)) # 用 kind 参数指定类型
plt.title('Sales and Profit (Bar)')
plt.show()

# 散点图：需要指定x和y的列
df.plot(kind='scatter', x='sales', y='profit', figsize=(8, 5))
plt.title('Profit vs Sales')
plt.show()</code></pre>
</body>

</html>